Table Of Contents

Previous topic

CompoundPotential class

Next topic

CombPotential class

This Page

SuttonChenPotential class

This class constructs the Sutton-Chen potential [1] as a subclass of CompoundPotential.

This potential contains 2-body and many-body terms defined as

\[\begin{split}U & = \varepsilon \left[ \sum_{i,j} \left( \frac{a}{r_{ij}} \right)^n - c \sum_i \sqrt{\rho_i} \right] \\ \rho_i & = \sum_j \left( \frac{a}{r_{ij}} \right)^m\end{split}\]

where \(r_{ij}\) is the interatomic distance, and \(\varepsilon, a, c, m, n\) are parameters.

Load the potential with:

>>> from pysic.interactions.suttonchen import SuttonChenPotential
>>> pot = SuttonChenPotential(symbols=...,
...                           tags=...,
...                           indices=...,
...                           parameters=...,
...                           cutoff=...,
...                           cutoff_margin=...)

The same cutoff is used for both the 2-body and many-body terms.

If the potential is given several target pairs, e.g., symbols = [['A', 'B'], ['A', 'C']], all possible combinations are targeted by default. For the above list, the 2-body interaction would be evaluated for A-B and A-C pairs (not B-C), and the many-body interaction would be evaluated for elements A with A-B and A-C pairs, for element B with B-A terms, and for element C with C-A terms. If the many-body term should be only evaluated for certain elements, the method set_density_symbols() can be used for specifying the specific target symbols. For instance:

>>> pot.set_symbols( [['A', 'B'], ['A', 'C']] )
>>> pot.set_density_symbols( ['A'] )

will have the 2-body terms evaluated for A-B and A-C pairs while the many-body term is only evaluated for neighborhoods of element A, taking into account the pairs A-B and A-C.

[1]Sutton, A. P., and Chen, J., 1990, Philos. Mag. Lett., 61, 139.

Full documentation of the SuttonChenPotential class

class pysic.interactions.suttonchen.SuttonChenPotential(symbols=None, tags=None, indices=None, parameters=None, cutoff=0.0, cutoff_margin=0.0)[source]

Class representing the Sutton-Chen potential as a CompoundPotential object.

Parameters:

symbols: list of string
the chemical symbols (elements) on which the potential acts
tags: integer
atoms with specific tags on which the potential acts
indices: list of integers
atoms with specific indices on which the potential acts
parameters: list of doubles
a list of parameters for characterizing the potential; their meaning depends on the type of potential
cutoff: double
the maximum atomic separation at which the potential is applied
cutoff_margin: double
the margin in which the potential is smoothly truncated to zero
define_elements()[source]
describe()
set_density_symbols(symbols)